1. Technical Field
The present invention relates generally to the field of computer software and, more particularly, to methods and systems for soft document sharing.
2. Description of Related Art
Current computing applications are largely single user systems. For example, conventional editing applications allow a single user to open a file and make modifications to the content. If while the file is open by a first user, a second user attempts to open the file, the second user will be prevented from opening or modifying the file. The second user is sometimes permitted to obtain a snapshot copy of the file. The snapshot copy, however, is not updated with any of the subsequent modifications made to the original copy by the first user. Thus, the second user is unable to share in the first user's ideas manifested as file modifications. Moreover, the second user is prevented from modifying the content of the original file and, thus, is prevented from sharing his or her ideas manifested as file modifications. In short, the first and second user are unable to collaboratively edit the file.
Collaboration, as the term is used herein, implies an ability for multiple clients to share ideas. This sharing includes the ability to automatically express one's ideas to the other members without having to have the other members explicitly solicit the ideas. Collaboration also includes the ability for each member to automatically receive any ideas from members who are transmitting ideas. Thus, at a minimum, collaboration implies communication among members that are party to the collaborative effort. This communication/collaboration may follow many models. A “brain-storming” session is an unrestrained model of collaboration. On the other hand, a “round-robin” model, in which each member has a specified turn to express ideas, is a constrained model of collaboration.
To fill this need for collaboration, collaborative software tools have been written that provide a shared document framework that allow documents to be collaboratively accessed by multiple users in a collaborative session. The shared document framework typically provides a mechanism for each collaborator to obtain a replicated copy of the shared document from a network server into the collaborator's local address space, which copy is in synchronism with all other replicated copies of the shared document. Such a system works fine for traditional desktop personal computers connected to a physical network. However, such a model does not work as well for computing devices such as; for example, personal digital assistants that do not have a physical network.
Personal digital assistants (PDAs) and similar computing devices are increasingly used by users to create and maintain schedules of meetings, notes, charts, lists, and other items that the user may need with them at all times. Because of the portable nature of these machines, they provide a convenient way for users to maintain access to these items without being tied to an office. Many of these documents are, despite their portable nature, documents for which collaborative involvement is sometimes needed. For example, during a meeting, many users may need to access and modify a document simultaneously in order to create a presentation. The collaboration of several individuals working on a single document simultaneously may result in a presentation that is markedly superior to one created by a single individual or even by multiple individuals working on the document at separate times. However, currently, PDAs and similar devices do not have the functionality necessary to provide collaborative sharing of documents. Therefore, a method and system of allowing users of PDAs and other portable computing devices that lack a connection to a physical network to collaborate with each other through shared access to soft documents is desirable. Furthermore, a method and system of allowing devices utilizing different operating systems to share documents with each other in a secure environment is also desirable.